////
////  test_Initializer.cpp
////  markerARLib
////
////  Created by fg on 6/20/16.
////  Copyright © 2016 CvidKal. All rights reserved.
////
//
//#include "GLRender.hpp"
//#include <opencv2/opencv.hpp>
//#include <Eigen/Dense>
//#include <fstream>
//#include <opencv2/opencv.hpp>
//
//#include "Marker.h"
//#include <ceres/rotation.h>
//#include "Algorithm.hpp"
//#include <Eigen/Dense>
//#include "glog/logging.h"
//#include <GLUT/GLUT.h>
//#include "global.h"
//#include "TestImage.hpp"
//#include "globalInit.h"
//#include "Initializer.h"
//using namespace std;
//using namespace cv;
//using namespace markerAR;
//using namespace cv;
//
//
//void addMarker2()
//{
//       Mat m1(360,480,CV_8UC3);
//        Mat m2 = m1.clone();
//    Mat m3 = m2.clone();
//    Mat m4 = m3.clone();
//        memcpy(m1.data, marker1, sizeof(marker1));
//
//        memcpy(m2.data, marker2, sizeof(marker2));
//
//    memcpy(m3.data, marker3, sizeof(marker3));
//
//    memcpy(m4.data, marker4, sizeof(marker4));
//    std::vector<KeyPoint>kpts;
//    cv::Mat desp;
//    orb->operator()(m1,Mat(),kpts,desp);
//    bow.addImage(kpts, desp);
//    auto R = Solve3D::setRotationMatrix(0.0, 0.0, 0.0);
//    auto m = new Marker(m1,R,0);
//    markerAR::map->addMarker(m);
//
//    orb->operator()(m2,Mat(),kpts,desp);
//    bow.addImage(kpts, desp);
//     R = Solve3D::setRotationMatrix(0.0, 0.0, 0.0);
//     m = new Marker(m2,R,1);
//    markerAR::map->addMarker(m);
//
//    orb->operator()(m3,Mat(),kpts,desp);
//    bow.addImage(kpts, desp);
//    R = Solve3D::setRotationMatrix(0.0, 0.0, 0.0);
//    m = new Marker(m3,R,1);
//    markerAR::map->addMarker(m);
//
//    orb->operator()(m4,Mat(),kpts,desp);
//    bow.addImage(kpts, desp);
//    R = Solve3D::setRotationMatrix(0.0, 0.0, 0.0);
//    m = new Marker(m4,R,1);
//    markerAR::map->addMarker(m);
//    bow.train();
//}
//
//int main(int argc,char**argv)
//{
//
//    google::InitGoogleLogging(argv[0]);
//    FLAGS_alsologtostderr = 1;
//    fLS::FLAGS_log_dir = "/Users/fg/cycle/log";
//    globalInit(640, 480, 520);
//    addMarker2();
//    Initializer initializer;
//    Relocalisation relocal;
//    Mat img;
//
//
//    for (int i=1; i<700; ++i) {
//        char s[100];
//        sprintf(s, "/Users/fg/Desktop/0620-103644/Image_%04d.jpg",i);
//        img = imread(s);
//        resize(img, img, cv::Size(480,360));
//        if(track->getState()==Tracking::Not_Initialise)
//        {
//            initializer.tryInitialize(img);
//            continue;
//        }
//
//
//
//    }
//    track->OutputTrajactory("/Users/fg/cycle/trajactoryCeres.txt");
//    return 0;
//}
